# -*- coding:utf-8 -*-
'''
@Project     : fypy

@File        : modisconfig.py

@Modify Time :  2024/2/1 16:02   

@Author      : fypy Team    

@Version     : 1.0   

@Description :

'''
import os
import sys
import numpy as np
import datetime

RESAM_GDAL = ['AVERAGE', 'BILINEAR', 'CUBIC', 'CUBIC_SPLINE', 'LANCZOS',
              'MODE', 'NEAREST_NEIGHBOR']
SINU_WKT = 'PROJCS["Sinusoidal_Sanson_Flamsteed",GEOGCS["GCS_Unknown",' \
           'DATUM["D_unknown",SPHEROID["Unknown",6371007.181,"inf"]],' \
           'PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]]' \
           ',PROJECTION["Sinusoidal"],PARAMETER["central_meridian",0],' \
           'PARAMETER["false_easting",0],PARAMETER["false_northing",0]' \
           ',UNIT["Meter",1]]'












'''
由于L1A、L1B、Geolocation数据均使用HDF－EOS格式，
因此在介绍L1A、L1B、Geolocation数据格式之前
有必要对HDF－EOS进行简要的说明。
HDF-EOS是NASA为遥感应用而对
NCSA（National Center for Supercomputing Applications
 美国国家超级计算中心）的HDF（Hierarchical Data Format 分级数据格式）进行的扩充。

5.MODIS数据产品分级

5.1 MODIS数据产品分级系统
    MODIS标准数据产品分级系统由5级数据构成，它们分别是：0级、1级、2级、3级和4级

5.2 0级数据
    卫星地面站直接接收到的、未经处理的、包括全部数据信息在内的原始数据为0级数据。

5.3 1级数据
    对没有经过处理的、完全分辨率的仪器数据进行重建，数据时间配准，使用辅助数据注解，
    计算和增补到0级数据之后为1级数据。

5.4 2级数据
    在1级数据基础上开发出的、具有相同空间分辨率和覆盖相同地理区域的数据为2级数据。

5.5 3级数据
    3级数据时以统一的时间-空间栅格表达的变量，通常具有一定的完整性和一致性。
    在3级水平上，将可以集中进行科学研究，如：定点时间序列，来自单一技术的
    观测方程和通用模型等。

5.6 4级数据
    通过分析模型和综合分析3级以下数据得出的结果数据为4级数据。

6 标准数据产品类型
    该部分详细链接https://wenku.baidu.com/view/ffb3c468a98271fe910ef9bf.html

6.1
MODIS 标准数据产品根据内容的不同分为 0 级、1 级数据产品，
在 1B 级数据产品之后，划分 2 －4 级数据产品，
包括：陆地标准数据产品、大气标准数据产品和海洋标准数据产品等三种主要标准数据产品类型，
总计分解为 44 种标准数据产品类型。它们分别是：

MOD01：即 MODIS1A 数据产品。
MOD02：即 MODIS1B 数据产品。
MOD03：即 MODIS 数据地理定位文件。
MOD04：大气 2、3 级标准数据产品，内容为气溶胶产品，
    Lambert 投影空间分辨率 1 公里，地理坐标 30 秒空间分辨率，
    每日数据为 2 级数据产品，每旬、每月数据合成为 3 级数据产品。
MOD05：可降水量。2 级大气产品。
MOD06：大气 2、3 级标准数据产品，内容为云产品，
    Lambert 投影空间分辨率 1 公里，地理坐标 30 秒空间分辨率，
    每日数据为 2 级数据产品，每旬、每月数据合成为 3 级数据产品。
MOD07：大气 2、3 级标准数据产品，内容为大气剖面数据，
    Lambert 投影空间分辨率 1 公里，地理坐 标 30 秒空间分辨率，
    每日数据为 2 级数据产品，每旬、每月数据合成为 3 级数据产品。
MOD08：大气 3 级标准数据产品，内容为栅格大气产品，
    1 公里空间分辨率。每日、每旬、每月合成 数据。
MOD09：陆地 2 级标准数据产品，内容为表面反射；
    空间分辨率 250m；白天每日数据。
MOD10：陆地 2、3 级标准数据产品，内容为雪覆盖，
    每日数据为 2 级数据，空间分辨率 500 米，
    旬、 月数据合成为 3 级数据，空间分辨率 500 米。
MOD11：陆地 2、3 级标准数据产品，内容为地表温度和辐射率，
    Lambert 投影，空间分辨率 1 公里， 
    地理坐标为 30 秒，每日数据为 2 级数据，
    每旬、每月数据合成为 3 级数据。
MOD12：陆地 3 级标准数据产品，
    内容为土地覆盖/土地覆盖变化，1km，1/4?，季节的，
    生物地球化 学循环，土地覆盖变化，3 级数据产品。
MOD13：陆地 2 级标准数据产品，内容为栅格的归一化植被指数和增强型植被指数（NDVI/EVI），空间分辨率 250m。
MOD14：陆地 2 级标准数据产品，内容为热异常-火灾和生物量燃烧，
    空间分辨率 1km，确定火灾发生 的位置、火灾等级以及暗火与燃烧比。
MOD15：陆地 3 级标准数据产品，内容为叶面积指数和光合有效辐射，
    空间分辨率 1km，每天的及旬、 月合成产品。
MOD16：陆地 4 级标准数据产品，内容为蒸腾作用，空间分辨率 1km，旬、月合成产品。
MOD17：陆地 4 级标准数据产品，内容为植被产品，NPP，空间分辨率为 250 米，1 公里，旬、月度 频率。
MOD18：海洋 2、3 级标准数据产品，内容为标准的水面辐射，全球洋面，空间分辨率 1km，日、旬、 月，海洋叶绿素。
MOD19：海洋 2、3 级标准数据产品，内容为色素浓度，全球洋面，空间分辨率 1km，日、旬、月度 数据。
MOD20：海洋 2、3 级标准数据产品，内容为叶绿素荧光性，全球洋面，空间分辨率 
        1km，叶绿素水 平大于 2.0mg/m3，日、旬、月度数据。 第 2 页 共 20 页 MODIS 数据格式
MOD21：海洋 2 级标准数据产品，内容为叶绿素-色素浓度，空间分辨率 1km，日、旬、月度数据。
MOD22：海洋 2、3 级标准数据产品，内容为光合可利用辐射（PAR） ，全球洋面，1km，日、旬、月 度数据。
MOD23：海洋 3 级标准数据产品，内容为悬浮物浓度。
MOD24：海洋 3 级标准数据产品，内容为有机质浓度。
MOD25：海洋 2、3 级标准数据产品，内容为球石浓度，全球洋面，空间分辨率 1km、20km，日、旬、 月度数据。
MOD26：海洋 3 级标准数据产品，内容为海洋水衰减系数。
MOD27：海洋 2、3 级标准数据产品，内容为海洋初级生产力，全球洋面，空间分辨率 1km，日、旬、 月度数据。
MOD28：海洋 2、3 级标准数据产品，内容为海面温度，全球洋面，空间分辨率 1km，每天的，每周 的/昼夜的，能量和水平衡，气候变化模型。
MOD29：海洋 2 级标准数据产品，内容为海冰覆盖，海洋，1 公里分辨率，日、旬数据。
MOD30： （未定）
MOD31：海洋 2、3 级标准数据产品，内容为藻红蛋白浓度， 1 公里分辨率，日、旬、月度数据。
MOD32：海洋 2 级标准数据产品，内容为处理框架和匹配的数据库，1 公里分辨率，日、旬、月度数 据，用于海洋叶绿素、海洋生产力计算。
MOD33：陆地 3 级标准数据产品，内容为雪覆盖，空间分辨率 500 米，日、旬、月度数据。
MOD34： （未定）
MOD35：大气 2 级标准数据产品，内容为云掩膜，空间分辨率为 250m 和 1 公里，日数据。
MOD36：海洋 3 级标准数据产品，内容为总吸收系数，空间分辨率为 1 公里，日、旬、月度数据
MOD37：海洋 2、3 级标准数据产品，内容为海洋气溶胶特性，空间分辨率 1km，日、旬、月度数据。
MOD38： （未定）
MOD39：海洋 2、3 级标准数据产品，内容为纯水势，空间分辨率 1km，日、旬、月度数据。
MOD40：陆地 3 级标准数据产品，内容为栅格的热异常，空间分辨率 1 公里，日、旬、月度数据。
MOD41： （未定）
MOD42：海洋 3 级标准数据产品，内容为海冰覆盖，空间分辨率 1 公里，日、旬、月度数据。
MOD43：陆地 3 级标准数据产品，内容为表面反射，BRDF/Albedo 参数，空间分辨率 1 公里，日、旬、 月度数据。
MOD44：陆地 3 级标准数据产品，内容为植被覆盖转换，250m，季度、年度，判定植被覆盖转换的发 生和类型。

6.2 特殊数据产品类型
MOD45：在 MOD02（1B）数据基础上，经过 BOWTIE 处理后的数据产品。
MOD46：在 MOD02（1B）数据基础上，经过 BOWTIE 处理后，并经过除云后的数据产品。 （其他特 殊数据产品待列） 。

7.MODIS产品MOD13Q1简介
MODIS产品有44种，可以分为大气、陆地、冰雪、海洋四个专题数据产品，
其中MOD13Q1属于陆地专题的产品，全称为MODIS/Terra Vegetation 
Indices 16-Day L3 Global 250m SIN Grid.，简称：MOD13Q1。

全球的MOD13Q1数据是一个采用Sinusoidal投影方式的3级网格数据产品，
具有250米的空间分辨率，每隔16天提供一次。
当缺少250米分辨率的蓝波段时，evi算法使用500米分辨率的蓝波段矫正残余的大气影响。
'''




